人對求知慾望要有貪婪的心態,學會基本的知識是一定要的,最後我們要往更細節去探討,盡量讓技術更發揮更極致,這樣也會比別人更不一樣
什麼是Image Layer?
科技始於人性,很多成本我們都必須考慮到,例如容量、時間、順暢度、安全性..等,這些成本其實大多數都是相輔相成的
如何精簡化Image
我們拿ubuntu做範例,分別創建兩個Image來做比較
Dockerfile ubuntu-image-1
FROM ubuntu:20.04
RUN apt-get update
RUN apt-get install -y wget
RUN wget https://github.com/ipinfo/cli/releases/download/ipinfo-2.0.1/ipinfo_2.0.1_linux_amd64.tar.gz
RUN tar zxf ipinfo_2.0.1_linux_amd64.tar.gz
RUN mv ipinfo_2.0.1_linux_amd64 /usr/bin/ipinfo
RUN rm -rf ipinfo_2.0.1_linux_amd64.tar.gz
Dockerfile ubuntu-image-2
FROM ubuntu:20.04
RUN apt-get update && \
apt-get install -y wget && \
wget https://github.com/ipinfo/cli/releases/download/ipinfo-2.0.1/ipinfo_2.0.1_linux_amd64.tar.gz && \
tar zxf ipinfo_2.0.1_linux_amd64.tar.gz && \
mv ipinfo_2.0.1_linux_amd64 /usr/bin/ipinfo && \
rm -rf ipinfo_2.0.1_linux_amd64.tar.gz
我分別建立Image ubuntu-image-1 跟 ubuntu-image-2
建立 ubuntu-image-1 過程資訊
建立 ubuntu-image-2 過程資訊
比對 ubuntu-image-1 跟 ubuntu-image-2 的Size
有沒有覺得從基本繼續往下學,發現有很多細節要學,隨然會覺得很雜很麻煩,但我覺得這很重要,畢竟做到大型的系統,要考慮的細節更多, 所以我們要養成好還要更好的心態
參考資料:
映像檔分層概念